package com.hgxd.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hgxd.entity.pojo.SysMenu;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author wtf
 */
@Mapper
public interface SysMenuMapper extends BaseMapper<SysMenu> {

    /**
     * 获取特定用户的菜单记录列表<p>这是所有的数据，包括目录、菜单和按钮（可能包含重复元素，需要去重）</p>
     * @param sysUserId
     * @return
     */
    List<SysMenu> getSysMenuListByUserId(@Param("sysUserId") Long sysUserId);

    /**
     * 获取目录和菜单（可能包含重复数据需去重）
     * @param userId
     * @return
     */
    List<SysMenu> getTreeByUserId(@Param("userId") Long userId);

    /**
     * 根据roleId查询menuIds
     * @param roleId
     * @return
     */
    List<Integer> getMenuByRoleId(@Param("roleId") Long roleId);
}
